package com.findFish.cage.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.findFish.common.annotation.Excel;
import com.findFish.common.core.domain.BaseEntity;

/**
 * 网箱维护记录对象 cage_maintenance
 * 
 * @author admin
 * @date 2025-03-31
 */
public class CageMaintenance extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 维护记录ID */
    private String id;

    /** 网箱ID */
    @Excel(name = "网箱ID")
    private String cageId;

    /** 维护日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "维护日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date maintenanceDate;

    /** 维护类型（清洁、修复、更换网布等） */
    @Excel(name = "维护类型", readConverterExp = "清=洁、修复、更换网布等")
    private String maintenanceType;

    /** 维护人员 */
    @Excel(name = "维护人员")
    private String performedBy;

    /** 维护备注 */
    @Excel(name = "维护备注")
    private String notes;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setCageId(String cageId) 
    {
        this.cageId = cageId;
    }

    public String getCageId() 
    {
        return cageId;
    }

    public void setMaintenanceDate(Date maintenanceDate) 
    {
        this.maintenanceDate = maintenanceDate;
    }

    public Date getMaintenanceDate() 
    {
        return maintenanceDate;
    }

    public void setMaintenanceType(String maintenanceType) 
    {
        this.maintenanceType = maintenanceType;
    }

    public String getMaintenanceType() 
    {
        return maintenanceType;
    }

    public void setPerformedBy(String performedBy) 
    {
        this.performedBy = performedBy;
    }

    public String getPerformedBy() 
    {
        return performedBy;
    }

    public void setNotes(String notes) 
    {
        this.notes = notes;
    }

    public String getNotes() 
    {
        return notes;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("cageId", getCageId())
            .append("maintenanceDate", getMaintenanceDate())
            .append("maintenanceType", getMaintenanceType())
            .append("performedBy", getPerformedBy())
            .append("notes", getNotes())
            .append("createdAt", getCreatedAt())
            .toString();
    }
}
